From a18b2e5078be119e82d35819cbb0c26583fa204e Mon Sep 17 00:00:00 2001 From: Andrew Paseltiner Date: Thu, 26 Mar 2015 15:07:11 -0400 Subject: [PATCH] pass translated crate name to doc tests closes #1459 --- src/cargo/ops/cargo_test.rs | 6 +++--- tests/test_cargo_test.rs | 19 +++++++++++++++++++ 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/src/cargo/ops/cargo_test.rs b/src/cargo/ops/cargo_test.rs index 2af21c2fc..190897eac 100644 --- a/src/cargo/ops/cargo_test.rs +++ b/src/cargo/ops/cargo_test.rs @@ -24,13 +24,13 @@ pub fn run_tests(manifest_path: &Path, let libs = compile.package.targets().iter() .filter(|t| t.doctested()) - .map(|t| (t.src_path(), t.name())); + .map(|t| (t.src_path(), t.name(), t.crate_name())); - for (lib, name) in libs { + for (lib, name, crate_name) in libs { try!(config.shell().status("Doc-tests", name)); let mut p = try!(compile.rustdoc_process(&compile.package)); p.arg("--test").arg(lib) - .arg("--crate-name").arg(name) + .arg("--crate-name").arg(&crate_name) .arg("-L").arg(&compile.root_output) .arg("-L").arg(&compile.deps_output) .cwd(compile.package.root()); diff --git a/tests/test_cargo_test.rs b/tests/test_cargo_test.rs index 08430fa7c..9b6d1892e 100644 --- a/tests/test_cargo_test.rs +++ b/tests/test_cargo_test.rs @@ -1400,3 +1400,22 @@ test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured ", compiling = COMPILING, running = RUNNING, doctest = DOCTEST))) }); + +test!(dashes_to_underscores { + let p = project("foo") + .file("Cargo.toml", r#" + [package] + name = "foo-bar" + version = "0.0.1" + authors = [] + "#) + .file("src/lib.rs", r#" + /// ``` + /// assert_eq!(foo_bar::foo(), 1); + /// ``` + pub fn foo() -> i32 { 1 } + "#); + + assert_that(p.cargo_process("test"), + execs().with_status(0)); +}); -- 2.30.2